1. Field of the Invention
The present invention relates to image processing technology in video game devices.
2. Description of the Related Art
Pursuant to the progress in computer graphics (CG) technology, a virtual world can now be represented even more realistically. A video game device utilizes such CG technology.
As an example of a video game, there is a shooting game. This type of game device is generally equipped with a gun unit, CPU for graphics processing, monitor, and so on. When a player aims the gunpoint at a target (enemy character) appearing on the monitor screen and pulls the trigger on a gun unit, the game device detects the position on the monitor screen of the light signal emitted from the gun unit, and performs image processing such as processing for destroying the enemy character based on such position data.
As one example of a typical gun shooting game heretofore, there is “Virtua Cop (Trademark)” manufactured by Sega Enterprises, Ltd. In this gun game, players compete for scores by using a gun unit and shooting down enemy characters appearing in the virtual three-dimensional space (game space) on the monitor screen. Here, an enemy character appears at a predetermined location on the monitor screen in a predetermined timing. When the player directs the gunpoint of the gun unit toward the enemy character, the viewpoint on the monitor screen approaches the enemy and such enemy character is enlarged and displayed on the monitor screen. Actions of the enemy character are controlled by an image processing program loaded in a game device and, when required, the enemy character attacks the player viewing the monitor screen.
However, the inventors have discovered through intense study that the following problems must be resolved in order to increase the reality of the game and represent the picture more realistically.
First, processing of explosion pictures in a conventional shooting game uses, for example, planar polygons and spherical polygons in order to decrease the amount of polygon data for representing explosion pictures. A texture of explosion pictures is affixed to these polygons and the animation of explosions is realized by rotating etc., this texture. Processing of explosion pictures using planar polygons is disclosed in International Publication No. WO95/35555. According to this method, polygons such as explosion patterns are always facing the direction of the line of sight and inconveniences upon using planar polygons (necessity to make the plane always face the direction of the line of sight) are resolved as it comprises camera control matrix processing means, object matrix processing means, and object pattern display processing means.
However, when representing explosion pictures with planar polygons, the boundary between the explosion picture and background becomes unnatural, resulting in the picture lacking reality. In other words, there is an inconvenience that the boundary between the explosion picture and background is a straight line. Moreover, when representing explosion pictures with spherical polygons, the explosion picture becomes monotonous, resulting in the picture lacking reality. Thus, a more realistic explosion picture is desired.
Second, upon realizing explosion pictures by combining a plurality of polygons, conventionally, explosion patterns concerning all such combinations were registered in a prescribed storage field. Reference is made to FIG. 6(A) and FIG. 7 for the explanation thereof. FIG. 6(A) shows four combinations of explosion data A1, B1, B2, C1, and C2 (patterns (1) through (4)) structuring the explosion object. FIG. 7 shows the explosion pictures represented by the combination of such explosion data. Pattern (1) corresponds to FIG. 7(A), pattern (2) to FIG. 7 (B), pattern (3) to FIG. 7(C), and pattern (4) to FIG. 7(D), respectively. Conventionally, explosion data was registered in advance for each of these four patterns, and one pattern was displayed by being selected optionally from the registered explosion patterns upon processing explosion pictures.
However, registering the explosion data in advance for all explosion patterns led to a problem in that the necessary memory increases pursuant to the increase in the variations of explosion patterns.
Third, there is a problem in that the movement of characters is unnatural because the motion interpolation processing in between the two different motions was insufficient heretofore. Motion interpolation processing is, for example, image processing to smoothly connect two motion changes (changes in motion patterns), such as from an “attacking motion” to a “collapsing motion,” when an enemy character in an attacking mode is shot. Conventional motion interpolation processing is explained with reference to FIG. 8(A). When the enemy character is in an attacking motion, the enemy character attacks with a predetermined motion pattern (motion pattern M). If the enemy character is damaged by the attack made by the player character, the enemy character makes a transition from an “attacking motion” to a “collapsing motion.” A plurality of patterns are predetermined for this “collapsing motion” and one of those patterns is selected in accordance with the situation of the enemy character being damaged or the game environment at such time, etc. Further, the “collapsing motion” is structured of a plurality of motion patterns (hit pattern H1, hit pattern H2, . . . ). Motion interpolation processing C is performed during the several frames when the transition from motion pattern M to hit pattern H1 is being made. Thus, the unnaturalness of the sudden transition from motion pattern M to hit pattern H1 can be solved as it will be in slow motion during such transition.
Nonetheless, as this method only performs motion interpolation processing C during the transition period from motion pattern M to hit pattern H1, changes in the motion are only slowed down temporarily and unnaturalness still existed when viewed as a whole.
Fourth, in conventional shooting games, enemy characters shot by bullets retreat straight back regardless of where the bullet hit or the destructive power of the bullet. Thus, when shooting with the likes of a machinegun which successively fires bullets, the shooting becomes easy as there is no change in the two-dimensional position of the enemy character, resulting in the amusement being lowered. This point is explained with reference to FIG. 9. As shown in FIG. 9(A), the enemy character retreats from position E1 to position E2 regardless of the position at which the enemy character is shot. The direction of retreat is parallel to the player's line of sight. Therefore, the game screen seen from the player's side, as shown in FIG. 9(B), only shows the changes of the enemy character moving from position E1 to E2. As there is no change in the two-dimensional position of the enemy character when seen from the player's side, the shooting is easy and the amusement is lowered.
Fifth, when the enemy character is attacked and it is to counterattack after the collapsing motion (shot-down motion), an opportunity is provided to the player for shooting if the enemy character starts the attacking motion from the very beginning, resulting in a problem that the amusement of the game is lowered. This point is explained with reference to FIG. 11 (A). Suppose that the enemy character is attacking in the attacking motion pursuant to predetermined attacking steps M1, M2 . . . Mn−1, Mn. Here, for example, M1 is an attacking step of holding the gun at a ready, M2 is an attacking step of aiming the gun, M3 is an attacking step of firing the bullet from the gun, and soon. Further suppose that the enemy character, during attacking step M3′ is damaged upon being attacked by the player character. The enemy character will make a transition to the “shot-down motion” and, after the completion of such “shot-down motion,” will return to the first step of the attacking motion, that is, attacking step M1. Thereafter, as the enemy character will perform in order attacking steps M1, M2 . . . Mn−1, Mn, it can not readily counterattack the player character. In other words, this provides the player character an opportunity to attack while the enemy character is performing attacking steps M1, M2, resulting in a problem that the amusement of the game is lowered. Although it is possible to disregard the “shot-down motion” upon the enemy character being attacked, this will also result in the amusement of the game being lowered as the player will not be able to enjoy the feeling of the bullet hitting the target.
Sixth, there is a problem in relation to the flight locus of a bullet seen from the line of sight of the player character. As shown in FIG. 12(A), conventional shooting games displayed the flight locus of a bullet seen from a moving player character as a flight locus of a bullet having the resulting speed vector upon subtracting the player character's speed vector from the bullet's speed vector. Therefore, when the moving direction of the bullet and the moving direction of the player character were the exact opposite, the speed of the outward appearance of the bullet is increased and the player is unable to react to such speed.
Seventh, there is a problem in the acceleration of the collision judgment. Here, collision judgment is the judgment of whether two objects collided and an example thereof is the collision judgment of a bullet and a building. This collision judgment is simplified by modeling the bullet as a line segment and the building as a plane and obtaining the intersection thereof. As conventional collision judgments judged the collision of the bullet (line segment polygon) with every building (planar polygon), high-speed game processing was hindered due to the excessive time required for the calculation. Moreover, as shown in FIG. 13, when a car operated by the player moves along a road preformed on a game space, the area in which the car may move is restricted to the road. Thus, the virtual area for collision judgment, area 1, area 2, and so on are formed along the road. And, as shown in FIG. 14(A), buildings (building 1, building 2, and so on) existing within each respective area are stored in advance in correspondence therewith. Collision judgment between the bullet fired from the player character driving the car and the aforementioned buildings is performed by, as shown in FIG. 14(B), checking each area to determine in which area the bullet exists (step B1). This area check is conducted by comparing the coordinates of the bullet modeled as a line segment polygon and the coordinates of each area. After confirming the area in which the bullet exists, collision judgment is performed with respect to each of the buildings existing in such area (step B2). According to this method, collision judgment between the line segment polygon representing the bullet and the planar polygon representing the building can be accelerated as only a planar polygon within a prescribed area need only be judged. However, as the aforementioned area only exists in a limited area of the game space, there is an inconvenience in that collision judgment can not be performed in a region not including such area. There is also another problem with this method in that game programs are complicated as polygons for areas need to be provided according to game scenes.
Eighth, in shooting games, there is a problem with representing wave motions consequent of explosions of the bullet and the like. As techniques of representing waves, for example, pattern change and texture scroll are known. Pattern change is a technique of displaying waves by modeling every condition of the wave motion and switching each model to the same position. With this technique, there is a problem in that the amount of data is increased as models for every condition of a wave must be prepared in advance. Texture scroll is a technique of preparing textures representing waves and displaying waves on the polygons by scrolling such textures. However, it is not possible to represent a three-dimensional wave as only planar pictures move according to this technique. Thus, a technique of representing realistic three-dimensional waves with a small amount of data is desired.
Ninth, when a game story is made from a plurality of stages and the order of such stages is predetermined in a game program, there is a problem in that the progress of the game is monotonous. Therefore, it is considered that the amusement in the game will increase if it is possible to change the progress of the game according to the player's intention.
Tenth, in conventional game devices, for example, there is a type wherein prescribed vibration is delivered to the player upon the explosion of enemy characters. In such conventional devices, the vibration generating device was driven by a sound signal generated pursuant to the sound data of background music and the like. This led to the vibration generating device picking up the aforementioned sound signals even during scenes having no relation to the explosion of enemy characters, resulting in unnatural vibrations.